﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace l1cs.server.serverpackets
{
    public class S_Poison : ServerBasePacket
    {
        /**
         * キャラクターの外見を毒状態へ変更する際に送信するパケットを構築する
         * 
         * @param objId
         *            外見を変えるキャラクターのID
         * @param type
         *            外見のタイプ 0 = 通常色, 1 = 緑色, 2 = 灰色
         */
        public S_Poison( int objId, int type )
        {
            writeC( Opcodes.S_OPCODE_POISON );
            writeD( objId );

            if ( type == 0 )
            { // 通常
                writeC( 0 );
                writeC( 0 );
            }
            else if ( type == 1 )
            { // 緑色
                writeC( 1 );
                writeC( 0 );
            }
            else if ( type == 2 )
            { // 灰色
                writeC( 0 );
                writeC( 1 );
            }
            else
            {
                throw new ArgumentException( "不正な引数です。type = " + type );
            }
        }

        override
        public byte[] getContent()
        {
            return getBytes();
        }

        override
        public String getType()
        {
            return "[S] S_Poison";
        }
    }
}
